Logical Configuration of Vehicle Control Systems Based on Driver Profiles

ABSTRACT

Apparatuses, systems, and methods are provided for the logical configuration of vehicle control systems based on driver profiles. A vehicle control computer may identify driving behavior of a driver of a vehicle through vehicle operation data provided by one or more of vehicle sensors, a telematics device, and a mobile device. Based on the driving behavior, the vehicle control computer may develop a first driving profile for the driver of the vehicle. The vehicle control computer transmit the first driving profile to a remote server storing driving profiles of a plurality of users. The vehicle control computer may download a second driving profile associated with a different driver from the remote server. The vehicle control computer may configure vehicle operations based off of the second driving profile associated with the different driver and may actuate vehicle operation based on the configuration.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is related to U.S. application Ser. No. 16/016,903(Attorney Docket No. 006591.01697) entitled “Preemptive LogicalConfiguration of Vehicle Control Systems”, which is being filedconcurrently with this application and which is herein incorporated byreference in its entirety.

TECHNICAL FIELD

Aspects described herein generally relate to autonomous,semi-autonomous, and non-autonomous vehicle control systems. Morespecifically, aspects relate to the logical configuration of vehiclecontrol systems based on driver profiles.

BACKGROUND

Each year vehicle accidents account for thousands of deaths and millionsof serious injuries. While autonomous and semi-autonomous car systemsare poised to significantly reduce the number of vehicle accidents and,by extension, the number of accident related fatalities and injuries,such systems are often insufficient with respect to the usage ofautonomous and/or semi-autonomous driving profiles based on drivingcircumstances on a trip-by-trip basis. Thus, arrangements for therecommendation of autonomous and/or semi-autonomous driving profilesbased on anticipation of driving circumstances may be advantageous inpreventing accidents and furthering motor vehicle safety.

BRIEF SUMMARY

The following presents a simplified summary of various aspects describedherein. This summary is not an extensive overview, and is not intendedto identify key or critical elements or to delineate the scope of theclaims. The following summary merely presents some concepts in asimplified form as an introductory prelude to the more detaileddescription provided below.

To overcome limitations such as those described above, and to overcomeother limitations that will be apparent upon reading and understandingthe present specification, aspects described herein are directed toapparatuses, systems, and methods for the logical configuration ofvehicle control systems based on driver profiles.

In accordance with one or more embodiments, a vehicle control computermay identify a driving behavior of a driver of a vehicle through vehicleoperation data provided by one or more of vehicle sensors, a telematicsdevice, and/or a mobile device. The vehicle control computer may developa first driving profile for the driver of the vehicle based on thedriving behavior. The vehicle control computer may transmit the firstdriving profile to a remote server storing driving profiles of aplurality of users. The vehicle control computer may download a seconddriving profile associated with a different driver from the remoteserver. The vehicle control computer may configure vehicle operationsbased off of the second driving profile associated with the differentdriver. The vehicle control computer may actuate vehicle operation basedon the configuration.

In some embodiments, the vehicle control computer may identify one ormore of acceleration behavior, braking behavior, and/or turning behaviorbased on acceleration data, braking data, and turning data provided byone or more of the telematics device, the on-board computer, and themobile device.

In some embodiments, the second driving profile associated with thedifferent driver is downloaded from the remote server through a drivingprofile store interface.

In some embodiments, the vehicle control computer may receive drivingroute information from the driver of the vehicle. The vehicle controlcomputer may calculate a risk score for a driving route corresponding tothe driving route information based on the driving route information.The vehicle control computer may identify the second driving profilebased on the risk score matching a driving profile safety score of thesecond driving profile. The vehicle control computer may recommend thesecond driving profile to the driver of the vehicle for download.

In some embodiments, the vehicle control computer may identify aplurality of driving profiles based on the risk score matching a rangeof driving profile safety scores corresponding to the plurality ofdriving profiles. The vehicle control computer may recommend the seconddriving profile to the driver of the vehicle for download based on thedriving profile safety score being closest to the risk score for thedriving route.

In some embodiments, each of the plurality of driving profiles areassociated with an insurance premium, and wherein the second drivingprofile is associated with a cheapest insurance premium.

In some embodiments, the downloading of the second driving profilecauses the different driver to receive an insurance credit.

BRIEF DESCRIPTION OF THE DRAWINGS

A more complete understanding of aspects described herein and theadvantages thereof may be acquired by referring to the followingdescription in consideration of the accompanying drawings, in which likereference numbers indicate like features, and wherein:

FIG. 1 depicts a diagram illustrating various example components of avehicle control system according to one or more aspects of thedisclosure;

FIGS. 2A-2H depict an illustrative event sequence for the logicalconfiguration of vehicle control systems based on driver profiles inaccordance with one or more aspects of the disclosure;

FIG. 3 depicts an illustrative method for the logical configuration ofvehicle control systems based on driver profiles in accordance with oneor more aspects of the disclosure; and

FIG. 4 depicts an example network environment and computing systems thatmay be used to implement aspects of the disclosure.

DETAILED DESCRIPTION

In the following description of the various embodiments, reference ismade to the accompanying drawings, which form a part hereof, and inwhich is shown by way of illustration, various embodiments of thedisclosure that may be practiced. It is to be understood that otherembodiments may be utilized.

FIG. 1 is a diagram illustrating various example components of a vehiclecontrol system 100 according to one or more aspects of the disclosure.Vehicle control system 100 may include a vehicle 110, one or moreadditional vehicles 110 a-n, a mobile computing device 120, a thirdparty data source server 130, a historical data source server 140, arisk score generation server 150, a risk map generation server 160, anda driving profile server 170. Each component shown in FIG. 1 may beimplemented in hardware, software, or a combination of the two.Additionally, each component of vehicle control system 100 may include acomputing device (or system) having some or all of the structuralcomponents as computing device 401 described below in regard to FIG. 4.

As discussed above, vehicle control system 100 shown in FIG. 1 includesvehicle 110. Vehicle 110 may be an automobile, motorcycle, scooter, bus,van, truck, semi-truck, train, boat, recreational vehicle, or othervehicle. Vehicle 110 may further be an autonomous vehicle,semi-autonomous vehicle, or non-autonomous vehicle. Vehicle controlsystem 100 may further include one or more additional vehicles 110 a-n,which may be similar to vehicle 110. In some examples, vehicle 110 mayinclude vehicle operation and environmental conditions sensors 111capable of detecting, recording, and transmitting various vehicleperformance and/or operational data and environmental conditions data.For example, sensors 111 may detect, store, and transmit datacorresponding to the vehicle's speed, distances driven, rates ofacceleration or braking, and specific instances of sudden acceleration,braking, swerving, and the like. Sensors 111 also may detect, store, andtransmit data received from the vehicle's internal systems, such asimpact to the body of the vehicle, air bag deployment, headlights usage,brake light operation, door opening and closing, door locking andunlocking, cruise control usage, hazard lights usage, windshield wiperusage, horn usage, turn signal usage, seat belt usage, phone and radiousage within the vehicle, internal decibel levels, maintenance performedon the vehicle, and other data collected by the vehicle's computersystems.

Additional sensors 111 may detect, store, and transmit the environmentaland external driving conditions data associated with vehicle 110including external temperature, precipitation levels, precipitationtype, presence of road ice and/or moisture, ambient light levels,presence of fog, and sun position affecting driver visibility. Sensors111 also may detect, store, and transmit data relating to movingviolations and the observance of traffic signals and signs by vehicle110. Additional sensors 111 may detect, store, and transmit datarelating to the maintenance of vehicle 110, such as the engine status,oil level, engine coolant temperature, odometer reading, the level offuel in the fuel tank, engine revolutions per minute (RPMs), and/or tirepressure. Certain vehicle sensors 111 may determine when and how oftenvehicle 110 stays in a single lane or strays into other lanes.

Vehicle 110 also may include one or more cameras and proximity sensors112 capable of recording additional conditions inside and/or outside ofvehicle 110. Internal cameras 112 may detect conditions such as thenumber of the passengers in vehicle 110, and potential sources of driverdistraction within the vehicle (e.g., pets, phone usage, and unsecuredobjects in the vehicle). External cameras and proximity sensors 112 maydetect other nearby vehicles, traffic levels, road conditions, trafficobstructions, animals, cyclists, pedestrians, and other conditions thatmay factor into driving trip and/or driving data analyses.

Certain vehicle sensors 111 and/or cameras and proximity sensors 112 maydetermine when and how often vehicle 110 stays in a single lane orstrays into other lanes. A Global Positioning System (GPS) 114 and/orlocational sensors positioned inside vehicle 110, and/or locationalsensors or devices external to vehicle 110 may be used to determine thelane position of vehicle 110, as well as road type (e.g., highway,entrance/exit ramp, residential area, two lane highway, four lanehighway, etc.), road quality (e.g., paved, gravel, dirt, etc.), andother vehicle position/location data.

Vehicle sensors 111 and/or cameras and proximity sensors 112 may beconfigured to transmit the vehicle performance and operational data andenvironmental conditions data to one or more internal computing devicesand/or systems including telematics device 115 and/or vehicle controlcomputer 116. Additionally, vehicle sensors 111 and/or cameras andproximity sensors 112 may be configured to independently transmit theabove-mentioned data to one or more external computing devices and/orsystems including mobile device 120, third party data source server 130,historical data source server 140, risk score generation server 150,risk map generation server 160, and driving profile server 170. In someinstances, the data transmission to the one or more external computingdevices and/or systems may be performed via communication systems 113and/or telematics device 115. In such cases, vehicle sensors 111 and/orcameras and proximity sensors 112 may be configured to transmit data tocommunications systems 113 and/or telematics device 115 which, in turn,may be configured to transmit the data to the one or more externalcomputing devices and/or systems. The transmission of data, eitherexternally or internally, from vehicle sensors 111 and/or cameras andproximity sensors 112 may occur seamlessly (e.g., live) and inreal-time, or may occur in intermittent bursts (e.g., every 5 seconds,10 seconds, 1 minute, etc.). In some examples, the transmission of datamay occur in offset real-time wherein a time delay (e.g., 1 second, 3seconds, 10 seconds, etc.) buffers the data transmission.

Communication systems 113 may be vehicle-based data transmission systemsconfigured to transmit environmental surroundings and conditions andvehicle performance and operational data to external computing systemsand/or other nearby vehicles and infrastructure, and to receive datafrom external computing systems and/or other nearby vehicles andinfrastructure. In some examples, communication systems 113 may use thededicated short-range communications (DSRC) protocols and standards toperform wireless communications between vehicles and/or externalinfrastructure such as bridges, guardrails, barricades, and the like.

Communication systems 113 may be implemented using other wirelessprotocols in other examples, such as WLAN communication protocols (e.g.,IEEE 802.11), Bluetooth (e.g., IEEE 802.15.1), or one or more of theCommunication Access for Land Mobiles (CALM) wireless communicationprotocols and air interfaces. In certain systems, communication systems113 may include specialized hardware installed in vehicle 110 (e.g.,transceivers, antennas, etc.), while in other examples the communicationsystems 113 may be implemented using existing vehicle hardwarecomponents (e.g., radio and satellite equipment, navigation computers)or may be implemented by software running on mobile computing device 120of drivers and passengers within vehicle 110. Communication systems 113may be configured to transmit data provided by vehicle sensors 111 andcameras and proximity sensors 112 to one or more external computingsystems and/or vehicles 110 a-n. Similarly, communications systems 113may be configured to receive data from one or more external computingsystems and/or vehicles 110 a-n, which may be configured with similarsensors, cameras and/or other devices, as described above with respectto vehicle 110. Such data may be utilized in the preemptive logicalconfiguration of vehicle control systems as described herein.

Telematics device 115 may be a computing device containing many or allof the hardware/software components as the computing device 401 depictedin FIG. 4. Telematics device 115 may receive vehicle performance and/oroperational data and environmental conditions data from vehicle sensors111 and cameras and proximity sensors 112, and may be configured totransmit the data to one or more external computing devices and/orsystems over a wireless transmission network.

Telematics device 115 also may be configured to detect or determineadditional types of data relating to real-time driving and the conditionof vehicle 110. Telematics device 115 may store information relating tothe type of vehicle 110, for example, as well as the make, model, trim(or sub-model), year, and/or engine specifications, and autonomousdriving system specifications. Additionally, other information such asvehicle owner or driver information, insurance information, andfinancing information for vehicle 110 may be stored on telematics device115.

In some instances, telematics device 115 may be configured to receivedata from vehicle sensors 111 and cameras and proximity sensors 112 andto transfer the received data to external computing devices and/orsystems including vehicles 110 a-n, mobile device 120, third party datasource server 130, historical data source server 140, risk scoregeneration server 150, risk map generation server 160, and drivingprofile server 170. In other instances, vehicle sensors 111 and camerasand proximity sensors 112 may be configured to directly transmit data toexternal computing devices and/or systems (e.g., vehicles 110 a-n,mobile device 120, third party data source server 130, historical datasource server 140, risk score generation server 150, risk map generationserver 160, and driving profile server 170) without using the telematicsdevice. Thus, telematics device 115 may be optional in certainembodiments.

Vehicle control computer 116 may contain some or all of thehardware/software components as the computing device 401 depicted inFIG. 4, and may be configured to operate and/or control aspects of thedriving of vehicle 110 in autonomous, semi-autonomous, and/ornon-autonomous driving arrangements, including but not limited to,acceleration, braking, steering, and/or route navigation. Furthermore,vehicle control computer 116 may be configured to operate one or moreinternal vehicle control systems and/or components including at least avehicle sound system, dashboard display and/or heads-up display system,interior lighting system, climate control system, door locking systems,and the like. Similarly, vehicle control computer 116 may be configuredto operate one or more external vehicle control systems and/orcomponents including windshield wipers, exterior lighting systems (e.g.,headlights, tail lights, running lights, turn signals, emergency lights,etc.), emission and exhaust systems, fuel systems, suspension systems,transmission systems, and the like. In some instances, vehicle controlcomputer 116 may be further configured to activate and/or control one ormore of vehicle operation sensors 111, cameras and/or proximity sensors112, communication systems 113, GPS 114, telematics device 115, and/oror mobile device 120.

In order to perform the functions described herein, vehicle controlcomputer 116 may be configured to receive, analyze, and act upon vehicleperformance and operational data provided by vehicle sensors 111 andancillary data provided by cameras and proximity sensors 112, mobiledevice 120, and/or third party data source server 130. Additionally,vehicle control computer 116 may be configured to receive, analyze, andact upon data provided by vehicles 110 a-n, historical data sourceserver 140, risk score generation server 150, risk map generation server160, and/or driving profile server 170. Such data may be receivedthrough communication systems 113 and/or other on-board communicationsystems. In certain embodiments, vehicle control computer 116 may alsobe configured to receive, analyze, and act upon data provided bytelematics device 115 and mobile device 120. Such data may be used byvehicle control computer 116 to perform autonomous driving functions,semi-autonomous driving functions described herein.

Stored in memory, vehicle control computer 116 may include at least riskscore module 117, coverage module 118, and/or driving profile module119. Risk score module 117 may store computer-executable instructionswhich, when executed by processors of vehicle control computer 116, maycause vehicle control computer 116 to calculate risk scores associatedwith driving danger areas and corresponding driving hazards based off ofhistorical data, as will be described in further detail below. Coveragemodule 118 may store computer-executable instructions which, whenexecuted by processors of vehicle control computer 116, may causevehicle control computer 116 to calculate an insurance coverage leveland/or premium for driving instances for vehicle 110 based on one ormore of third party data provided by third party data source server 130,historical data provided by historical data source server 140, riskscore data provided by risk score module 117 and/or risk scoregeneration server 150, risk map data provided by risk map generationserver 160, and/or selection of a particular driving profile fromdriving profile server 170. Driving profile module 119 may storecomputer-executable instructions which, when executed by processors ofvehicle control computer 116, may cause vehicle control computer 116 todevelop a driving profile associated with a user/driver of vehicle 110based on vehicle operation data provided by vehicle operation sensors111, GPS 114, telematics device 115, and/or mobile device 120, and/orenvironmental conditions and surroundings data provided by one or moreof cameras and proximity sensors 112 and vehicles 110 a-n.

In some embodiments, driving profile module 119 may store furtherinstructions which may cause vehicle control computer 116 to communicatewith driving profile server 170 through a driving profile storeinterface in order to facilitate the download of driving profiles tovehicle control computer 116. Additionally and/or alternatively, drivingprofile module 119 may also store instructions which may cause vehiclecontrol computer 116 to identify driving profiles to recommend to auser/driver of vehicle 110 based on matching a driving profile safetyscore of driving profiles with route safety scores associated with adriving route corresponding to route information provided by auser/driver of vehicle 110, as described in further detail below.

In certain embodiments, mobile computing device 120 may be includedwithin the vehicle 110 and may be used to independently collect vehicledriving data and/or to receive vehicle driving data from one or morevehicle and/or external computing devices and/or systems. Mobilecomputing device 120 may be, for example, a mobile phone, personaldigital assistant (PDA), or tablet computer of the driver orpassenger(s) of vehicle 110. Software applications executing on mobiledevice 120 may be configured to independently detect certain drivingdata. For example, mobile device 120 may be equipped with one or moreaccelerometers and/or GPS systems (e.g., sensors 121) which may beaccessed by software applications executing on mobile device 120 todetermine vehicle location, speed, direction, and other basic drivingdata. As stated above, mobile computing device 120 may be configured totransmit the independently collected vehicle driving data and/or thereceived vehicle driving data and environmental conditions data to oneor more internal and/or external computing devices and/or systems.

In other examples, software on the mobile device 120 may be configuredto receive some or all of the driving data collected by vehicle sensors111 and cameras and/or proximity sensors 112. Mobile computing device120 may also be involved with aspects of autonomous and semi-autonomousdriving, including receiving, collecting, and transmitting vehicleoperational data regarding autonomous and semi-autonomous driving andautonomous and semi-autonomous driving relationships between multiplevehicles. Furthermore, mobile device 120 may be configured to performthe multi-dimensional risk score calculations described in furtherdetail below.

Vehicle control system 100 may include third party data source server130, containing some or all of the hardware/software components as thecomputing device 401 depicted in FIG. 4. Third party data source server130 may comprise a third party data source computer 131 for receivingand/or processing third party data including current weather conditiondata, forecasted weather condition data, traffic flow data, road closuredata, and/or other data affecting external driving conditions. Thirdparty data source server 130 may also comprise memory 132 used to storethe third party data collected by third party data source computer 131.Third party data source computer 131 may transmit the third party datato vehicle 110 for aiding in the logical configuration of vehiclecontrol systems based on driver profiles as described herein.

System 100 may include historical data source server 140, containingsome or all of the hardware/software components as the computing device401 depicted in FIG. 4. Historical data source server 140 may comprise ahistorical data source computer 141 for receiving and/or processinghistorical data including insurance claims, accident reports, historicalenvironmental surroundings and conditions and/or historical vehicleoperations data and ancillary data associated with insurance claims andaccident reports. Historical data source server 140 may also comprisememory 142 used to store the historical data collected by historicaldata source computer 141. Historical data source computer 141 maytransmit the historical data to vehicle 110 for aiding in theperformance of the preemptive logical configuration of vehicle controlsystems as described herein.

System 100 may include risk score generation server 150 containing someor all of the hardware/software components as the computing device 401depicted in FIG. 4. Risk score generation server 150 may includehardware, software, and network components to receive data from one ormore data sources, such as vehicle 110 (e.g., via communication systems113, telematics device 115, vehicle control computer 116, etc.), one ormore additional vehicles 110 a-n, mobile computing device 120, thirdparty data source 130, historical data source 140, risk map generationserver 160, driving profile server 170, and other data sources. Riskscore generation server 150 may include memory 152, which may includeadditional data for risk score generation server 150 to process and/orgenerate, for example, one or more risk scores. Risk score generationcomputer 151 may analyze data received from the various data sources.Risk score generation server 150 may initiate communication with and/orretrieve data from vehicle 110, one or more additional vehicles 110 a-n,mobile computing device 120, third party data source 130, historicaldata source 140, risk map generation server 160, driving profile server170, and other data sources wirelessly, or by way of separate computingsystems over one or more computer networks (e.g., the Internet). In someinstances, vehicle control computer 116 may include a risk score module117 which may provide vehicle control computer 116 with a similarability to generate one or more risk scores as compared to risk scoreserver 150.

Risk scores may be determined for one or more of the data valuesdetermined by the vehicle sensors 111, cameras and/or proximity sensors112, telematics device 115, mobile computing device 120, third partydata source server 130, historical data source server 140, risk mapgeneration server 160, driving profile server 170, and the like. Forexample, risk scores may be determined for one or more of the vehicleperformance and/or operational data variables including vehicle speed,acceleration, breaking, and the like, one or more of the internalvehicle systems data variables including turn signal usage, hazard lightusage, windshield wiper usage, and the like, one or more of theenvironmental conditions data variables including precipitation levels,precipitation types, ambient light levels, and the like (e.g., vehicleoperator data and ancillary data). Additionally, risk scores may bedetermined for vehicle performance and/or operational data received fromone or more additional vehicle 110 a-n.

The calculation of the risk scores may be performed by risk scoregeneration server 150 and/or risk score module 117. In calculating therisk scores, risk score generation server 150 and/or risk score module117 may incorporate data provided by third party data source server 130and/or historical data source server 140. In some examples, risk scoresdetermined for each variable may be summed to determine an overall riskscore. The risk score may be a number from 0 to 100 wherein 0 representsminimal risk and 100 represents maximum risk. Furthermore, the riskscores may be calculated seamlessly and in real-time based on changes inthe vehicle performance and/or operational data, environmentalconditions data, traffic data, route data, and the like as describedabove. The risk scores may only be calculated for data having an impactin the near short term (e.g., 5 seconds to 5 minutes).

In some arrangements, the calculation of the risk scores may beperformed by risk score generation server 150 and/or risk score module117 in relation to particular areas in the vicinity of vehicle 110and/or particular areas along an intended route of vehicle 110. Forexample, risk score generation server 150 and/or risk score module 117may identify a location of vehicle 110, and may calculate risk scoresfor one or more areas in the vicinity of vehicle 110, and/or one or moreareas along an intended route of vehicle 110, known for driving hazardsbased on data provided by one or more of vehicles 110 a-n, third partydata source 130, historical data source 140, and/or risk map generationserver 160. In some instances, the vicinity around the location ofvehicle 110 may be defined by predetermined area and/or in relation to adriving route specified by a user/driver of the vehicle. The risk scorescalculated by risk score generation server 150 and/or risk score module117 may identify one or more danger areas in the vicinity of thelocation of vehicle 110 with known driving hazards.

System 100 may include risk map generation server 160, containing someor all of the hardware/software components as the computing device 401depicted in FIG. 4. Risk map server 160 may include hardware, software,and network components to receive data from one or more data sources,such as vehicle 110 (e.g., via communication systems 113, telematicsdevice 115, vehicle control computer 116, etc.), one or more additionalvehicles 110 a-n, mobile computing device 120, third party data sourceserver 130, historical data source server 140, risk score generationserver 150, driving profile server 170, and other data sources. Risk mapserver 160 may include memory 162, which may include additional data forrisk map server 160 to generate, for example, one or more risk maps.Risk map computer 161 may analyze data received from the various datasources. Risk map server 160 may initiate communication with and/orretrieve data from vehicle 110, one or more additional vehicles 110 a-n,mobile computing device 120, third party data source 130, historicaldata source 140, risk score generation server 150, driving profileserver 170, and other data sources wirelessly, or by way of separatecomputing systems over one or more computer networks (e.g., theInternet).

In some arrangements, risk map generation server 160 may operate intandem with risk score generation server 150 in order to produce a riskmap corresponding to the vicinity around the location and/or intendedroute of vehicle 110. In particular, risk map generation server 160 maygenerate a dynamically alterable risk map which is populated by thetotality of driving danger areas identified the risk scores calculatedby risk score generation server 150. Vehicle control computer 116 and/orvehicle control systems of vehicle 110 may be configured by the risk mapgenerated by risk map generation server 160. Based on the configuration,vehicle control computer 116 and/or vehicle control systems of vehicle110 may identify whether or not a location of vehicle 110 corresponds tolocation associated with a risk score. If so, vehicle control computer116 and/or vehicle control systems of vehicle 110 may prioritizeassessment of environmental data to identify driving hazardscorresponding to the risk score while the vehicle is in the drivingdanger area. In some instances, the risk map may be generated by riskmap generation server 160 responsive to receiving an intended drivingroute of vehicle 110 from driver of vehicle 110.

Vehicle control system 100 may include driving profile server 170,containing some or all of the hardware/software components as thecomputing device 401 depicted in FIG. 4. Driving profile server 170 maycomprise a driving profile computer 171 for receiving driving profileupload and/or download requests from vehicle control computers,including vehicle control computer 116. Furthermore, driving profileserver 170 may also comprise memory 172 used to store the drivingprofiles collected by driving profile computer 171. Driving profilecomputer 171 may transmit driving profiles to vehicle 110 for thelogical configuration of vehicle control systems.

In some instances, historical data source server 140, risk scoregeneration server 150, risk map generation server 160, and drivingprofile server 170 may associated with a same computing deviceconfigured to perform the functionality of each of historical datasource server 140, risk score generation server 150, risk map generationserver 160, and driving profile server 170. In such instances, thehistorical data source processes may be performed by the computingdevice through execution of computer executable instructions stored in ahistorical data source model, the risk score generation processes may beperformed by the computing device through execution ofcomputer-executable instructions stored in a risk score generationmodule, the risk map generation processes may be performed by thecomputing device through execution of computer-executable instructionsstored in a risk map generation module, and the driving profileprocesses may be performed by the computing device through execution ofcomputer-executable instructions stored in a driving profile module. Thecomputing device may have a memory which may store data commonlyaccessible between the historical data source module, risk scoregeneration module, risk map generation module, and driving profilemodule.

Vehicle control computer 116 may pull data, seamlessly and in real-time,from any one, or combination of, one or more additional vehicles 110a-n, vehicle sensors 111, cameras and proximity sensors 112, GPS 114,telematics device 115, mobile device 120, third party data source server130, historical data source server 140, risk score generation server150, and/or risk map generation server 160. The data provided may enablevehicle control computer 116 to perform autonomous and semi-autonomousdriving actions for vehicle 110 and/or provide one or more drivingalerts based on the preemptive logical configuration of vehicle controlsystems as described herein.

FIGS. 2A-2H depict an illustrative event sequence for the logicalconfiguration of vehicle control systems based on driver profiles inaccordance with one or more illustrative aspects described herein. Whilethe steps of the event sequence of FIGS. 2A-2H are described in aparticular order, it should be understood that the steps may beperformed in any order without departing from the scope of thedisclosure provided herein. Furthermore, even though the event sequenceis described as being performed by a particular arrangement of computingdevices (e.g., vehicle control computer 116, third party data sourceserver 130, historical data source server 140, risk score generationserver 150, and risk map generation server 160, and driving profileserver 170) the processes may be performed by a number of computingdevices greater or less than those described in regard to FIGS. 2A-2H.For example, vehicle control computers 116, third party data sourceservers 130, historical data source servers 140, risk score generationservers 150, risk map generation servers 160, driving profile server170, and other computing devices may be used in the logicalconfiguration of vehicle control systems based on driving profileswithout departing from the scope of the disclosure provided herein.

Referring to FIG. 2A, at step 201, vehicle control computer 116 mayreceive vehicle property data of a plurality of types associated withvehicle 110 from a plurality of sources. For example, vehicle controlcomputer 116 may receive vehicle performance and operational data forvehicle 110 from vehicle sensors 111. In some instances, vehicle controlcomputer 116 may receive vehicle performance and operational data (e.g.,location, speed, direction acceleration, deceleration, and the like)from one or more sensors 121 included in mobile computing device 120.The received vehicle performance and operational data may be associatedwith the general driving behavior of a user/driver of vehicle 110 duringvehicle operation. For example, the received vehicle performance andoperational data may include at least the user/driver's typical drivingspeed, rates of acceleration or deceleration (e.g., braking), steeringcolumn positioning, headlights usage, brake light operation, dooropening and closing, door locking and unlocking, cruise control usage,hazard lights usage, windshield wiper usage, horn usage, and turn signalusage. Other types of vehicle performance and operational data may bereceived including at least suspension positioning information, level offuel in the fuel tank, engine revolutions per minute (RPMs), enginestatus, oil level, engine coolant temperature, odometer reading, and/ortire pressure. In some instances, telematics device 115 may providevehicle control computer 116 with vehicle make, model, and partsinformation. Alternatively, such information may be pre-stored in memoryassociated with vehicle control computer 116. The vehicle performanceand operational data may be transmitted by vehicle sensors 111 tovehicle control computer 116 continuously and in real-time.

Additionally, vehicle control computer 116 may receive internal vehicleconditions data for vehicle 110 from vehicle sensors 111 and/or camerasand proximity sensors 112. The received internal vehicle conditions datamay include at least the number of passengers in the vehicle, seat beltusage indications for each of the passengers in the vehicle, andinternal decibel levels. In some instances, mobile device 120 associatedwith a user/driver of vehicle 110 may provide a usage indication tovehicle control computer 116. The usage indication provided may be ageneral usage indication corresponding to unspecified mobile deviceactivity, or may be a specific usage indication corresponding tospecific mobile device activity (e.g., usage of text messaging, camera,internet browser, and/or usage of social media applications.). Theinternal vehicle conditions data and mobile device usage indication datamay be provided to vehicle control computer 116 continuously and inreal-time by vehicle sensors 111, cameras and proximity sensors 112, andmobile device 120.

In some instances, the vehicle property data may be received by vehiclecontrol computer 116 during a particular driving instance of vehicle 110and/or across a plurality of driving instances. Additionally and/oralternatively, the vehicle property data may be received by vehiclecontrol computer 116 in instances in which vehicle 110 is operating in asemi-autonomous and/or non-autonomous driving mode.

At step 202, vehicle control computer 116 may receive ancillary data ofany of a plurality of types associated with the surroundings of vehicle110 from any of a plurality of sources. For example, vehicle computer116 may receive vehicle performance and operational data and internalvehicle conditions data, as described above in step 201, from thecommunication systems of one or more additional vehicles 110 a-n.Vehicle control computer 116 may output a polling request viacommunication systems 113 for the vehicle performance and operationaldata and internal vehicle conditions data from one or more additionalvehicles 110 a-n. The polling request may be output within a certainradial proximity from vehicle 110 (e.g., 5 feet, 100 feet, 500 feet, 1mile, etc.). In some instances, vehicle make, model, and part data, aswell as route data may also be requested from the one or more additionalvehicles 110 a-n. The vehicle performance and operational data andinternal vehicle conditions data for one or more additional vehicles 110a-n may be received by vehicle control computer 116 continuously and inreal-time.

Additionally, ancillary data associated with the surroundings of vehicle110 may include environmental conditions data provided by any one, orcombination of, vehicle sensors 111, cameras and proximity sensors 112,mobile device 120, and/or third party data source server 130. Inparticular, vehicle sensors 111 and cameras and proximity sensors 112may provide vehicle control computer 116 with environmental conditionsdata corresponding to the weather conditions as immediately experiencedby vehicle 110. Such immediately experienced environmental conditionsdata may include an indication of precipitation, type of precipitation,volume of precipitation, temperature, presence of road ice, presence offluid on road, ambient light levels, presence of fog, density of fog,sun position affecting driver visibility, presence of wind and/or windgusts, velocity of wind and/or wind gusts, and the like. Theenvironmental conditions data, as determined by sensors 111, cameras andproximity sensors 112, mobile device 120, and/or historical data sourceserver 140, may be provided to vehicle control computer 116 continuouslyand in real-time.

Furthermore, the ancillary data associated with the surroundings ofvehicle 110 may include traffic data provided by any one, or combinationof, vehicle sensors 111, cameras and proximity sensors 112, mobiledevice 120 (e.g., sensors 121 within the mobile device), a navigationsystem associated with vehicle control computer 116, and/or third partydata source server 130. In particular, vehicle sensors 111 and camerasand proximity sensors 112 may provide traffic data to vehicle controlcomputer 116 as immediately experienced by vehicle 110 in the areasurrounding vehicle 110. Mobile device 120, via a navigationapplication, the on-board navigation system of vehicle control computer116, and third party data source server 130 may provide vehicle controlcomputer 116 with traffic data associated with the projected route ofvehicle 110. Such traffic data may be provided to vehicle controlcomputer 116 continuously and in real-time.

Also, the ancillary data may include road type and quality data, whichmay be provided by vehicle sensors 111 and/or cameras and proximitysensors 112. In some instances, road type and quality data may beprovided by a navigation application operating on mobile device 120(e.g., crowd sourced navigation application). Road type and road qualitydata may be provided to vehicle control computer 116 continuously and inreal-time.

In some instances, the ancillary data may be received by vehicle controlcomputer 116 during a particular driving instance of vehicle 110 and/oracross a plurality of driving instances. Additionally and/oralternatively, the ancillary data may be received by vehicle controlcomputer 116 in instances in which vehicle 110 is operating in asemi-autonomous and/or non-autonomous driving mode.

In some instances, steps 201 and 202 may be performed sequentially. Inother instances, steps 201 and 202 may be performed simultaneously.

At step 203, vehicle control computer 116 may identify a drivingbehavior of a user/driver of vehicle 110 based on the vehicle operationdata received at step 201 and the ancillary data received at step 202.In some instances, the identification of the driving behavior of theuser/driver of vehicle 110 may occur in relation to a particular drivinginstance and may be performed based on the vehicle operation datareceived at step 201 and the ancillary data received at step 202relating to that particular driving instance. In other instances,however, the identification of the driving behavior may occur across aplurality of driving instances and may be based off of aggregate vehicleoperation data received at step 201 and ancillary data received at step202 relating to the plurality of driving instances. Additionally and/oralternatively, the driving behavior may be determined after apredetermined number of driving instances (e.g., 5 driving instances,100 driving instances, and the line) based on the vehicle operation datareceived at step 201 and the ancillary data received at step 202 for thepredetermined driving instances. In such cases, the driving behavior maybe determined by vehicle control computer 116 after each drivinginstance, and then aggregated to identify an overall driving behaviorafter the predetermined number of driving instances has been achieved.

In identifying the driving behavior based on the vehicle operation datareceived at step 201 and the ancillary data received at step 202,vehicle control computer 116 may determine the manner in which theuser/driver of vehicle 110 operates vehicle 110 under variouscircumstances. For example, vehicle control computer 116 may determinethe user/driver's typical rate of acceleration, deceleration, turning,and so during driving instances in the rain, with traffic, with notraffic, in the morning, at night, etc. Similarly, vehicle controlcomputer 116 may determine the user/driver's typical route taken toknown locations (e.g., home, work, school, store, and the like), as wellas the user/driver's average rate of velocity while driving duringdriving instances in the rain, with traffic, with no traffic, in themorning, at night, etc. Additionally and/or alternatively, other drivingbehaviors associated with the user/driver of vehicle 110 may bedetermined based on the vehicle operation data received at step 201 andthe ancillary data received at step 202.

At step 204, vehicle control computer 116 may develop a driving profilefor the user/driver of vehicle 110. In particular, vehicle controlcomputer 116 may develop the driving profile for the user/driver ofvehicle 110 based on the driving behavior identified at step 203. Thedriving profile may be a logical configuration for operation of vehicle110 which may cause vehicle control computer 116 to operate vehicle 110,in an autonomous and/or semi-autonomous driving mode, in a mannersimilar to that of the user/driver of vehicle 110. In particular, thedriving profile, when used to configure operation of vehicle 110, maycause vehicle control computer 116 to control operation of vehicle 110in a manner resembling the driving behavior displayed by the user/driverof vehicle 110. For example, the driving profile may cause vehiclecontrol computer 116 to cause vehicle 110 to accelerate, decelerate,turn, change lanes, follow speed limits and stop signs, etc., duringdriving instances in the rain, with traffic, with no traffic, in themorning, at night, etc., in a manner similar that of the user/driver ofvehicle 110.

In some instances, in developing the driving profile for the user/driverof vehicle 110, the vehicle control computer 116 of vehicle 110 maycalculate a driving profile safety score for the driving profile of theuser/driver. The driving profile safety score may be a number from 0 to100 wherein 0 represents the most risk and 100 represents minimal risk.The driving profile safety score may incorporate the vehicle operationdata received at step 201 and the ancillary data received at step 202and may represent how safely the driving profile is affect operations ofvehicle 110 in a manner corresponding to how safely the user/driver ofvehicle 110 operates vehicle 110 under various circumstances. Forexample, a driving profile of a user/driver who drives slowly, breaksgently, accelerates steadily, turns without significant g-force, gives aturn signal at every turn or lane change, stops at every stop sign,follows the speed limit, maintains a one car distance on the road, etc.may have a higher driving profile safety score than that of a drivingprofile of a different user/driver who drives fast, breaks aggressively,accelerates rapidly, turns with significant g-force, and etc.

Referring to FIG. 2B, at step 205, vehicle control computer 116 maytransmit the driving profile associated with the user/driver of vehicle110 to driving profile server 170. In particular, vehicle controlcomputer 116 may transmit the driving profile to driving profile server170 by way of communication systems 113. In some instances, vehiclecontrol computer 116 may transmit the driving profile to one or more oftelematics device 115 and mobile device 120 which in turn may transmitthe driving profile associated with the user/driver of vehicle 110 todriving profile server 170. At step 206, driving profile server 170 maystore the driving profile in memory 172.

At step 207, vehicle control computer 116 of vehicle 110 may determine alocation of vehicle 110. In particular, vehicle control computer 116 mayactivate GPS 114 of vehicle 110 to determine the location of vehicle110. In some instances, vehicle control computer 116 may query and/oractivate one or more of telematics device 115 and mobile device 120 inorder to receive location data to determine the location of vehicle 110.The determining of the location of vehicle 110 may be performed byvehicle control computer 116 upon receipt of an unlock request from akey fob and/or key of vehicle 110, entry into vehicle 110 by auser/driver of vehicle 110, ignition of an engine of vehicle 110, and/orresponsive to receipt of driving route information from a user/driverand/or passenger of vehicle 110. Additionally and/or alternatively, thedetermining of the location of vehicle 110 may be performed by vehiclecontrol computer 116 responsive to termination of operation of vehicle110 (e.g., turning off of the engine of vehicle 110), entry of the keyfob, key, and/or mobile device 120 into the cabin of vehicle 110, and/orin response to other factors such as activation of a driver seat weightsensor, receipt of a location determination request provided by theuser/driver and/or passenger, etc.

At step 208, vehicle control computer 116 of vehicle 110 may optionallyreceive driving route information from a user/driver and/or passenger ofvehicle 110. In some instances, the driving route information mayinclude a starting point and destination provided by the user/driverand/or passenger of vehicle 110 through an input/output interfaceassociated with vehicle control computer 116. However, if the locationof vehicle 110 was determined at step 201, then the user/driver and/orpassenger of vehicle 110 may not need to provide starting pointinformation. Additionally and/or alternatively, vehicle control computer116 may receive the driving route information from the user/driverand/or passenger of vehicle 110 from mobile device 120.

Referring to FIG. 2C, at step 209, vehicle control computer 116 ofvehicle 110 may query third party data source server 130 forenvironmental data. In particular, vehicle control computer 116 mayquery third party data source server 130 based on the location ofvehicle 110 identified at step 207 in order to determine current weathercondition data, forecasted weather condition data, traffic flow data,road closure data, and/or other data affecting external drivingconditions of vehicle 110 in a vicinity around the location of vehicle110. In instances in which the user/driver and/or passenger of vehicle110 provided driving route information at step 208, vehicle controlcomputer 116 may further include the driving route information in thequery to third party data source server 130. Additionally and/oralternatively, vehicle control computer 116 may command and/or instructone or more of telematics device 115 and mobile device 120 to requestthe environmental data from third party data source server 130.

At step 210, third party data source server 130 may provide theenvironmental data to vehicle control computer 116. In some instances,third party data source server 130 may provide the environmental data toone or more of telematics device 115 and mobile device 120 which in turnmay provide the environmental data to vehicle control computer 116 ofvehicle 110.

In the event that vehicle control computer 116 provided driving routeinformation to third party data source server 130, third party datasource server 130 may return environmental data to vehicle controlcomputer 116 corresponding to the driving route information provided. Insome instances, the environmental data provided by third party datasource server 130 may be anticipatory to the driving route correspondingto the driving route information. As an illustrative, non-limitingexample, the progression of vehicle 110 along the driving route may beprojected to take four hours and involve passing through a first city ata two hour mark and a second city at a four hour mark. Third party datasource server 130 may provide environmental data to vehicle controlcomputer 116 which anticipates expected environmental data to beexpected by vehicle 110 two hours into the future in relation to thefirst city and four hours into the future in relation to the secondcity. It is noted that the data provisioning may be done for the totalcontinuity of the driving route, rather than on a city-by-city basis.

Alternatively, in the event that vehicle control computer 116 providedlocation information relating to vehicle 110 to third party data sourceserver 130, third party data source server 130 may return environmentaldata to vehicle control computer 116 corresponding to a vicinity aroundthe location of vehicle 110. In some instances, the vicinity may be apredetermined area surrounding the location of vehicle 110 which may bedetermined by previous driving habits of the user/driver of vehicle 110,available data, and/or based on certain radial distance (e.g., 5 miles,10 miles, 100 miles, and the like) around the location of vehicle 110.

At step 211, vehicle control computer 116 of vehicle 110 may queryhistorical data from historical data source server 140 to identifyhistorical incident data. In particular, vehicle control computer 116may query historical data source server 140 to identify historicalincident data including insurance claims data, accident reports data,historical environmental surroundings and conditions and/or historicalvehicle operations data and ancillary data associated with insuranceclaims and accident reports data, etc. The query provided to historicaldata source server 140 by vehicle control computer 116 may include oneor more of the location information and/or route informationcorresponding to vehicle 110 and the environmental data provided bythird party data source server 130. In some instances, vehicle controlcomputer 116 may command and/or instruct one or more of telematicsdevice 115 and mobile device 120 to request the historical data fromthird party data source server 130.

At step 212, historical data source server 140 may provide thehistorical data to vehicle control computer 116. In some instances,historical data source server 140 may provide the historical data to oneor more of telematics device 115 and mobile device 120 which in turn mayprovide the historical data to vehicle control computer 116 of vehicle110.

In the event that vehicle control computer 116 provided driving routeinformation to historical data source server 140, historical data sourceserver 140 may return historical data to vehicle control computer 116corresponding to the driving route information provided. Alternatively,in the event that vehicle control computer 116 provided locationinformation relating to vehicle 110 to historical data source server140, historical data source server 140 may return historical data tovehicle control computer 116 corresponding to a vicinity around thelocation of vehicle 110.

Referring to FIG. 2D, at step 213, vehicle control computer 116 mayrequest risk score calculation from risk score generation server 150. Insome instances, the request for risk score calculation may from vehiclecontrol computer 116 to risk score generation server 150 may include oneor more of the location of vehicle 110 determined at step 207, drivingroute information received at step 208, environmental data received atstep 210, and historical data received at step 212.

At step 214, risk score generation server 150 may calculate one or morerisk scores based on one or more of the location of vehicle 110determined at step 207, driving route information received at step 208,environmental data received at step 210, and historical data received atstep 212 and may transmit the one or more risk scores to the vehicle110. In some instances, however, one or more risk scores may becalculated locally at vehicle 110 by vehicle control computer 116. Insuch instances, processors of vehicle control computer 116 may executeone or more computer-executable instructions corresponding to risk scoremodule 117 which may cause vehicle control computer 116 to calculate oneor more risk scores based on one or more of the location of vehicle 110determined at step 207, driving route information received at step 208,environmental data received at step 210, and historical data received atstep 212. In arrangements where vehicle control computer 116 calculatesa risk score for each of the one or more danger areas and/orcorresponding driving hazards, steps 213 and 215 may not be performed.

At step 215, vehicle control computer 116 of vehicle 110 may requestrisk map generation from risk map generation server 160. In doing so,vehicle control computer 116 may provide the risk score data generatedat step 214 to risk map generation server 160. Alternatively, ininstances in which risk scores are calculated at risk score generationserver 150 in an arrangement in which risk score generation server 150and risk map generation server 160 are configured as modules sharing thesame computing device, vehicle control computer 116 may only provide arisk map generation request to the computing device storing the riskscore generation module and risk map generation module.

At step 216, risk map generation server 160 may calculate a risk mapwhich incorporates each of the one or more risk scores and may providethe calculated risk map to vehicle control computer 116.

Referring to FIG. 2E, at step 217, vehicle control computer 116 mayrequest enumeration of driving profiles available for download to theuser/driver of vehicle 110 from driving profile server 170. In someinstances, the enumeration request may include one or more of thelocation of vehicle 110 determined at step 207, driving routeinformation received at step 208, environmental data received at step210, and historical data received at step 212. Additionally and/oralternatively, the enumeration request may further include informationcorresponding to the make, model, and parts information of vehicle 110.Furthermore, the enumeration request may specify whether vehicle 110 isan autonomous, semi-autonomous, or non-autonomous vehicle, in additionto the Society of Automotive Engineers (e.g., SAE) automation levelcapacity (e.g., level 0 □level 5). In some instances, the enumerationrequest may further include an indication of the autonomous operationfirmware of vehicle 110, as well as an indication of the last servicingof vehicle operation sensors 111 and cameras and proximity sensors 112of vehicle 110.

At step 218, driving profile server 170 may perform the enumeration ofdriving profiles requested by vehicle control computer 116 and providethe enumeration to vehicle control computer 116. In some instances, theperformance of the enumeration by driving profile server 170 may bebased off of the information provided by vehicle control computer 116 inrequesting enumeration. For example, driving profile server 170 mayperform the enumeration based on information corresponding to the make,model, and parts information of vehicle 110, whether vehicle 110 is anautonomous, semi-autonomous, or non-autonomous vehicle, the SAE level ofvehicle 110, the indication of the autonomous operation firmware ofvehicle 110, and the indication of the last servicing of vehicleoperation sensors 111 and cameras and proximity sensors 112 of vehicle110. The enumeration performed by driving profile server 170 may returnthe driving profiles available to be downloaded to vehicle controlcomputer 116 and used to configure vehicle operation of vehicle 110.

At step 219, vehicle control computer 116 may identify a driving profile(e.g., a second driving profile) associated with a user/driver differentthan the user/driver of vehicle 110 for recommendation to theuser/driver of vehicle 110 based on the enumeration of available drivingprofiles for download to vehicle control computer 116 provided bydriving profile server 170 at step 219. In performing theidentification, vehicle control computer 116 may compare driving profilesafety scores corresponding to each of the driving profiles yieldedduring the enumeration performed by driving profile server 170 with therisk score provided by risk score module 117 and/or risk scoregeneration server 150 at step 214, and/or the risk map provided by riskmap generation server 160 at step 216. In comparing the driving profilesafety scores corresponding to each of the driving profiles yieldedduring the enumeration with the risk score and/or risk map, vehiclecontrol computer 116 may identify at least a driving profile (e.g., thesecond driving profile) for recommendation to the user/driver of vehicle110 based on the driving profile safety scores matching the risk scoreand/or risk scores of the risk map. As an illustrative, non-limitingexample, the risk score and/or risk scores of the risk map may be 70,and vehicle control computer 116 may identify at least a driving profilewith driving profile safety score of 70. In instances in which nodriving profile safety scores match that of the risk score and/or riskscores of the risk map, vehicle control computer may identify a drivingprofile with a driving profile safety score closest to the risk scoreand/or risk scores of the risk map.

In other instances, vehicle control computer 116 may identify one ormore driving profiles for recommendation to the user/driver of vehicle110. In particular, vehicle control computer 116 may identify one ormore driving profiles for recommendation based on the enumeration ofavailable driving profiles for download to vehicle control computer 116provided by driving profile server 170 at step 219. In performing theidentification, vehicle control computer 116 may compare driving profilesafety scores corresponding to each of the driving profiles yieldedduring the enumeration performed by driving profile server 170 with therisk score provided by risk score module 117 and/or risk scoregeneration server 150 at step 214, and/or the risk map provided by riskmap generation server 160 at step 216. In comparing the driving profilesafety scores corresponding to each of the driving profiles yieldedduring the enumeration with the risk score and/or risk map, vehiclecontrol computer 116 may identify one or more driving profiles forrecommendation to the user/driver of vehicle 110 based on the drivingprofile safety scores being within a certain predetermined range (e.g.,+/−5, 10, 25, and the like) of the risk score and/or risk scores of therisk map. As an illustrative, non-limiting example, the risk scoreand/or risk scores of the risk map may be 70, and vehicle controlcomputer 116 may identify one or more driving profiles with drivingprofile safety score being +/−25 of 70. In such instances, vehiclecontrol computer may identify a first driving profile with a divingsafety score of 95, a second driving profile with a driving safety scoreof 70, and a third driving profile with a driving profile safety scoreof 45. In some instances, vehicle control computer 116 may identify aparticular driving profile which has a driving profile safety scoreclosest to the risk score and/or risk score of the risk map.

At step 220, vehicle control computer 116 of vehicle 110 may calculate acoverage level and/or premium for each of the driving profilesidentified for recommendation to the user/driver of vehicle 110 at step219. In particular, processors of vehicle control computer 116 mayexecute one or more computer-executable instructions of coverage module118 which may cause vehicle control computer 116 to calculate aninsurance coverage level and/or premium for each of the driving profilesidentified for recommendation to the user/driver of vehicle 110 at step219.

In some instances, the calculation of the coverage level and/or premiumfor the identified driving profiles may incorporate environmental dataprovided by third party data source server 130 and/or historical dataprovided by historical data source server 140. In some instances, thecalculation of the coverage level and/or premium may include risk scoredata provided by risk score module 117, risk score generation server 150and/or risk map data provided by risk map generation server 160, and/ora level of operating autonomy of vehicle 110 (e.g., fully-autonomous,semi-autonomous, non-autonomous, and so on). In some instances, thecalculation of the coverage level and/or premium for the drivinginstance of vehicle 110 may incorporate the SAE of vehicle 110.Additionally and/or alternatively, the calculation of the coverage leveland/or premium for the identified driving profiles may furtherincorporate the deviation of the driving profile safety scores from therisk score and/or risk score of the risk map. For example, a drivingprofile with a driving profile safety score of the highest value and/orclosest value to the risk score and/or risk score of the risk map may beassociated with a cheapest insurance premium. Driving profiles withdriving profile safety scores of the lowest values and/or furthestvalues from the risk score and/or risk score of the risk map may beassociated with a higher insurance premiums.

Referring to FIG. 2F, at step 221, vehicle control computer 116 mayrecommend one or more driving profiles to the user/driver of vehicle110. In some instances, vehicle control computer 116 may recommend aparticular driving profile (e.g., second driving profile) to theuser/driver of vehicle 110 based on the driving safety score of thedriving profile matching the risk score and/or risk scores of the riskmap. In other instances, vehicle control computer 116 may recommend aplurality of driving profiles, including a second driving profile, tothe user/driver of vehicle 110 based on the driving safety scores of theplurality of driving profiles being within a predetermined range of therisk score and/or risk scores of the risk map. Additionally and/oralternatively, the recommendation of driving profiles to the user/driverof vehicle 110 may be performed by vehicle control computer 116 based onuser preferences including one or more of a risk preference (e.g.,deviation of the driving profile safety score from the risk score and/orrisk scores of the risk map), user specified presets (e.g., smoothdriving, get places quickly, fast and/or jerky driving, best view, andthe like), and/or previously user favorited driving profiles.

At step 222, vehicle control computer 116 may receive a user selectionof a driving profile by the user/driver of vehicle 110 from thoserecommended at step 221. The selection may occur through an input/outputinterface of vehicle control computer 116 and/or by way of mobile device120. At step 223, vehicle control computer 116 may request download ofthe driving profile selected by the user/driver of vehicle 110 fromdriving profile server 170 and at step 224, driving profile server 170may provide the driving profile to vehicle control computer 116. In someinstances, in requesting download of the driving profile from drivingprofile server 170, vehicle control computer 116 may further provide aninsurance credit to the user/driver corresponding to the selecteddriving profile (e.g., second driving profile). In other instances, thedownloading of the driving profile may cause vehicle control computer116 and/or driving profile server 170 to provide the different driver toprovide an insurance credit to the user/driver corresponding to thedownloaded driving profile.

Referring to FIG. 2G, at step 225, vehicle control computer 116 mayupdate vehicle operation logic of vehicle 110 based on the drivingprofile downloaded from driving profile server 170 at step 224. Theupdating of the vehicle operation logic of vehicle 110 may cause vehiclecontrol computer 116 to perform the one or more functions specified bythe driving profile.

At step 226, vehicle control computer 116 may associate the coveragelevel and/or premium for the selected driving profile with a drivinginstance of vehicle 110. In doing so, vehicle control computer 116 maybe configured to charge a cost corresponding to the coverage leveland/or premium for the selected driving profile to a payment accountassociated with the user/driver of vehicle 110 and/or anotherperson/entity associated with vehicle 110.

At step 227, vehicle control computer 116 may receive vehicle propertydata of a plurality of types associated with vehicle 110 from aplurality of sources. For example, vehicle control computer 116 mayreceive vehicle performance and operational data for vehicle 110 fromvehicle sensors 111. In some instances, vehicle control computer 116 mayreceive vehicle performance and operational data (e.g., location, speed,direction acceleration, deceleration, and the like) from one or moresensors 121 included in mobile computing device 120. The receivedvehicle performance and operational data may be associated with thegeneral operation of vehicle 110. For example, the received vehicleperformance and operational data may include at least the vehicle'sspeed, rates of acceleration or deceleration (e.g., braking), steeringcolumn positioning, headlights usage, brake light operation, dooropening and closing, door locking and unlocking, cruise control usage,hazard lights usage, windshield wiper usage, horn usage, and turn signalusage. Other types of vehicle performance and operational data may bereceived including at least suspension positioning information, level offuel in the fuel tank, engine revolutions per minute (RPMs), enginestatus, oil level, engine coolant temperature, odometer reading, and/ortire pressure. In some instances, telematics device 115 may providevehicle control computer 116 with vehicle make, model, and partsinformation. Alternatively, such information may be pre-stored in memoryassociated with vehicle control computer 116. The vehicle performanceand operational data may be transmitted by vehicle sensors 111 to thevehicle control computer continuously and in real-time.

Additionally, vehicle control computer 116 may receive internal vehicleconditions data for vehicle 110 from vehicle sensors 111 and/or camerasand proximity sensors 112. The received internal vehicle conditions datamay include at least the number of passengers in the vehicle, seat beltusage indications for each of the passengers in the vehicle, andinternal decibel levels. In some instances, mobile device 120 associatedwith a user/driver of vehicle 110 may provide a usage indication tovehicle control computer 116. The usage indication provided may be ageneral usage indication corresponding to unspecified mobile deviceactivity, or may be a specific usage indication corresponding tospecific mobile device activity (e.g., usage of text messaging, camera,internet browser, and/or usage of social media applications.). Theinternal vehicle conditions data and mobile device usage indication datamay be provided to vehicle control computer 116 continuously and inreal-time by vehicle sensors 111, cameras and proximity sensors 112, andmobile device 120.

At step 228, vehicle control computer 116 may receive ancillary data ofany of a plurality of types associated with the surroundings of vehicle110 from any of a plurality of sources. For example, vehicle computer116 may receive vehicle performance and operational data and internalvehicle conditions data, as described above in step 218, from thecommunication systems of one or more additional vehicles 110 a-n.Vehicle control computer 116 may output a polling request viacommunication systems 113 for the vehicle performance and operationaldata and internal vehicle conditions data from one or more additionalvehicles 110 a-n. The polling request may be output within a certainradial proximity from vehicle 110 (e.g., 5 feet, 100 feet, 500 feet, 1mile, etc.). In some instances, vehicle make, model, and part data, aswell as route data may also be requested from the one or more additionalvehicles 110 a-n. The vehicle performance and operational data andinternal vehicle conditions data for one or more additional vehicles 110a-n may be received by vehicle control computer 116 continuously and inreal-time.

Additionally, ancillary data associated with the surroundings of vehicle110 may include environmental conditions data provided by any one, orcombination of, vehicle sensors 111, cameras and proximity sensors 112,mobile device 120, and/or historical data source server 140. Inparticular, vehicle sensors 111 and cameras and proximity sensors 112may provide vehicle control computer 116 with environmental conditionsdata corresponding to the weather conditions as immediately experiencedby vehicle 110. Such immediately experienced environmental conditionsdata may include an indication of precipitation, type of precipitation,volume of precipitation, temperature, presence of road ice, presence offluid on road, ambient light levels, presence of fog, density of fog,sun position affecting driver visibility, presence of wind and/or windgusts, velocity of wind and/or wind gusts, and the like. Mobile device120 and/or historical data source server 140, on the other hand, mayprovide vehicle control computer 116 with expected and/or forecastedweather data associated with the area corresponding to a location ofvehicle 110. Such forecasted weather data may include a likelihood ofprecipitation, wind, road ice, fog, and the like. The environmentalconditions data, as determined by sensors 111, cameras and proximitysensors 112, mobile device 120, and/or historical data source server140, may be provided to vehicle control computer 116 continuously and inreal-time.

Furthermore, the ancillary data associated with the surroundings ofvehicle 110 may include traffic data provided by any one, or combinationof, vehicle sensors 111, cameras and proximity sensors 112, mobiledevice 120 (e.g., sensors 121 within the mobile device), a navigationsystem associated with vehicle control computer 116, and/or historicaldata source server 140. In particular, vehicle sensors 111 and camerasand proximity sensors 112 may provide traffic data to vehicle controlcomputer 116 as immediately experienced by vehicle 110 in the areasurrounding vehicle 110. Mobile device 120, via a navigationapplication, the on-board navigation system of vehicle control computer116, and historical data source server 140 may provide vehicle controlcomputer 116 with traffic data associated with the projected route ofvehicle 110. Such traffic data may be provided to vehicle controlcomputer 116 continuously and in real-time.

Also, the ancillary data may include road type and quality data, whichmay be provided by vehicle sensors 111 and/or cameras and proximitysensors 112. In some instances, road type and quality data may beprovided by a navigation application operating on mobile device 120(e.g., crowd sourced navigation application). Road type and road qualitydata may be provided to vehicle control computer 116 continuously and inreal-time.

In some instances steps 227 and 228 may be performed sequentially. Inother instances, steps 227 and 228 may be performed simultaneously.

Referring to FIG. 2H, at step 229, vehicle control computer 116 mayactuate operation of vehicle 110. In particular, processors associatedwith vehicle control computer 116 may execute executable instructionsbased on the user-selected driving profile, which may cause the vehiclecontrol computer 116 to take any of a plurality of driving actionsand/or cause any of a plurality of driving alerts based on the vehicleoperation data received at step 227 and/or the ancillary data receivedat step 228. Driving actions may include any one, or combination of,activating the brake, changing lanes, disabling mobile phone 120,disabling application use on mobile phone 120, disabling acceleration,reducing speed, turning on headlights, turning on emergency lights,honking vehicle horn, turning on windshield wipers, and the like.Detection alerts may include any one, or combination of, flashinginterior lights, producing an audible sound in the interior of vehicle110, suggesting an alternate route, providing an indication of upcomingissues on the dashboard and/or heads-up display unit, and the like.

FIG. 3 depicts an illustrative method for the logical configuration ofvehicle control systems based on driving profiles according to one ormore aspects of the disclosure. Referring to FIG. 3, at step 305, avehicle control computer may identify driving behavior of a driver of avehicle through vehicle operation data provided by one or more ofvehicle sensors, a telematics device, and a mobile device. At step 310,the vehicle control computer may develop a first driving profile for thedriver of the vehicle based on the driving behavior. At step 315, thevehicle control computer transmit the first driving profile to a remoteserver storing driving profiles of a plurality of users. At step 320,the vehicle control computer may download a second driving profileassociated with a different driver from the remote server. At step 325,the vehicle control computer may configure vehicle operations based offof the second driving profile associated with the different driver. Atstep 330, the vehicle control computer may actuate vehicle operationbased on the configuration.

FIG. 4 depicts an example network environment and computing system 400that may be used to implement aspects of the disclosure. Computingsystem 400 may include a computing device 401, which may have aprocessor 403 for controlling overall operation of computing device 401and its associated components, including RAM 405, ROM 407, input/outputmodule 409, and memory unit 415. Computing device 401, along with one ormore additional devices (e.g., terminals 441, 451) may correspond to anyof multiple systems or devices, such as vehicle control systems and/ordevices, configured as described herein for receiving data from varioussources, generating driving profiles based on the received data,requesting download of driving profiles, configuring vehicle operationbased on driving profiles, and actuating vehicle operation based on theconfiguration provided by the driving profiles.

Input/Output (I/O) module 409 may include a microphone, keypad, touchscreen, and/or stylus through which a user of computing device 401 mayprovide input, and may also include one or more of a speaker forproviding audio input/output and a video display device for providingtextual, audiovisual and/or graphical output. Software may be storedwithin memory unit 415 and/or other storage to provide instructions toprocessor 403 for enabling computing device 401 to perform variousfunctions. For example, memory unit 415 may store software used bycomputing device 401, such as an operating system 417, applicationprograms 419, and an associated internal database 421. Memory unit 415may include one or more of volatile and/or non-volatile computer memoryto store computer-executable instructions, data, and/or otherinformation. Processor 403 and its associated components may allowcomputing device 401 to execute a series of computer-readableinstructions to receive data from various sources, generate drivingprofiles based on the received data, request download of drivingprofiles, configure vehicle operation based on driving profiles, andactuate vehicle operation based on the configuration provided by thedriving profiles.

Computing device 401 may operate in a networked environment 400supporting connections to one or more remote computers, such asterminals/devices 441 and 451. Computing device 401, and relatedterminals/devices 441 and 451, may include devices installed invehicles, mobile devices that may travel within vehicles, or devicesoutside of vehicles that are configured to receive and process vehicleand other sensor data. Thus, computing device 401 and terminals/devices441 and 451 may each include personal computers (e.g., laptop, desktop,or tablet computers), servers (e.g., web servers, database servers),vehicle-based devices (e.g., on-board vehicle computers, vehiclecommunication systems, sensors, and telematics devices), or mobilecommunication devices (e.g., mobile phones, portable computing devices,and the like), and may include some or all of the elements describedabove with respect to the computing device 401. The network connectionsdepicted in FIG. 4 include a local area network (LAN) 425 and a widearea network (WAN) 429, and a wireless telecommunications network 433,but may also include other networks. When used in a LAN networkingenvironment, computing device 401 may be connected to LAN 425 through anetwork interface or adapter 423. When used in a WAN networkingenvironment, computing device 401 may include a modem 427 or other meansfor establishing communications over WAN 429, such as network 431 (e.g.,the Internet). When used in a wireless telecommunications network 433,computing device 401 may include one or more transceivers, digitalsignal processors, and additional circuitry and software forcommunicating with wireless computing devices 441 (e.g., mobile phones,vehicle communication systems, vehicle sensors, and telematics devices)via one or more network devices 435 (e.g., base transceiver stations) inwireless network 433.

It will be appreciated that the network connections shown areillustrative and other means of establishing a communications linkbetween the computers may be used. The existence of any of variousnetwork protocols such as TCP/IP, Ethernet, FTP, HTTP and the like, andof various wireless communication technologies such as GSM, CDMA, Wi-Fi,and WiMAX, is presumed, and the various computing devices andmulti-dimensional risk score generation system components describedherein may be configured to communicate using any of these networkprotocols or technologies.

Additionally, one or more application programs 419 used by computingdevice 401 may include computer executable instructions for receivingdata and performing other related functions as described herein.

As will be appreciated by one of skill in the art, the various aspectsdescribed herein may be embodied as a method, a computer system, or acomputer program product. Accordingly, those aspects may take the formof an entirely hardware embodiment, an entirely software embodiment oran embodiment combining software and hardware aspects. Furthermore, suchaspects may take the form of a computer program product stored by one ormore computer-readable storage media having computer-readable programcode, or instructions, embodied in or on the storage media. Any suitablecomputer readable storage media may be utilized, including hard disks,CD-ROMs, optical storage devices, magnetic storage devices, and/or anycombination thereof. In addition, various signals representing data orevents as described herein may be transferred between a source and adestination in the form of electromagnetic waves traveling throughsignal-conducting media such as metal wires, optical fibers, and/orwireless transmission media (e.g., air and/or space).

Although the subject matter has been described in language specific tostructural features and/or methodological acts, it is to be understoodthat the subject matter defined in the appended claims is notnecessarily limited to the specific features or acts described above.Rather, the specific features and acts described above are disclosed asexample forms of implementing the claims.

What is claimed is:
 1. A method, comprising: at a computing deviceincluding at least one or more processors and memory storingcomputer-executable instructions: identifying, by the one or moreprocessors, a driving behavior of a driver of a vehicle through vehicleoperation data provided by one or more of vehicle sensors, a telematicsdevice, and a mobile device; based on the driving behavior, developing,by the one or more processors, a first driving profile for the driver;transmitting, by the one or more processors, the first driving profileto a remote server storing driving profiles of a plurality of users;downloading, by the one or more processors, a second driving profileassociated with a different driver from the remote server; configuring,by the one or more processors, vehicle operations based off of thesecond driving profile associated with the different driver; andactuating, by the one or more processors, vehicle operation based on theconfiguration.
 2. The method of claim 1, wherein identifying the drivingbehavior of the driver through vehicle operation data includes:identifying, by the one or more processors, one or more of accelerationbehavior, braking behavior, and turning behavior based on accelerationdata, braking data, and turning data provided by one or more of thevehicle sensors, telematics device, and the mobile device.
 3. The methodof claim 1, wherein the second driving profile associated with thedifferent driver is downloaded from the remote server through a drivingprofile store interface.
 4. The method of claim 1, further comprising:receiving, by the one or more processors, driving route information fromthe driver of the vehicle; based on the driving route information,calculating, by the one or more processors, a risk score for a drivingroute corresponding to the driving route information; identifying, bythe one or more processors, the second driving profile based on the riskscore matching a driving profile safety score of the second drivingprofile; and recommending, by the one or more processors, the seconddriving profile to the driver of the vehicle for download.
 5. The methodof claim 4, further comprising: identifying, by the one or moreprocessors, a plurality of driving profiles based on the risk scorematching a range of driving profile safety scores corresponding to theplurality of driving profiles; and recommending, by the one or moreprocessors, the second driving profile to the driver of the vehicle fordownload based on the driving profile safety score being closest to therisk score for the driving route.
 6. The method of claim 5, wherein eachof the plurality of driving profiles are associated with an insurancepremium, and wherein the second driving profile is associated with acheapest insurance premium.
 7. The method of claim 6, wherein thedownloading of the second driving profile causes the different driver toreceive an insurance credit.
 8. An apparatus, comprising: a processor; amemory storing computer-readable instructions that, when executed by theprocessor, cause the apparatus to: identify a driving behavior of adriver of a vehicle through vehicle operation data provided by one ormore of vehicle sensors, a telematics device, and a mobile device; basedon the driving behavior, develop a first driving profile for the driver;transmit the first driving profile to a remote server storing drivingprofiles of a plurality of users; download a second driving profileassociated with a different driver from the remote server; configurevehicle operations based off of the second driving profile associatedwith the different driver; and actuate vehicle operation based on theconfiguration.
 9. The apparatus of claim 8, wherein the memory storesfurther computer-readable instructions that, when executed by theprocessor, cause the apparatus to: identify one or more of accelerationbehavior, braking behavior, and turning behavior based on accelerationdata, braking data, and turning data provided by one or more of thevehicle sensors, the telematics device, and the mobile device.
 10. Theapparatus of claim 8, wherein the second driving profile associated withthe different driver is downloaded from the remote server through adriving profile store interface.
 11. The apparatus of claim 8, whereinthe memory stores further computer-readable instructions that, whenexecuted by the processor, cause the apparatus to: receive driving routeinformation from the driver of the vehicle; based on the driving routeinformation, calculate a risk score for a driving route corresponding tothe driving route information; identify the second driving profile basedon the risk score matching a driving profile safety score of the seconddriving profile; and recommend the second driving profile to the driverof the vehicle for download.
 12. The apparatus of claim 11, wherein thememory stores further computer-readable instructions that, when executedby the processor, cause the apparatus to: identify a plurality ofdriving profiles based on the risk score matching a range of drivingprofile safety scores corresponding to the plurality of drivingprofiles; and recommend the second driving profile to the driver of thevehicle for download based on the driving profile safety score beingclosest to the risk score for the driving route.
 13. The apparatus ofclaim 12, wherein each of the plurality of driving profiles areassociated with an insurance premium, and wherein the second drivingprofile is associated with the cheapest insurance premium.
 14. Theapparatus of claim 13, wherein the downloading of the second drivingprofile causes the different driver to receive an insurance credit. 15.One or more non-transitory computer-readable media storing instructionsthat, when executed by a computing device comprising at least oneprocessor and memory, cause the computing device to: identify a drivingbehavior of a driver of a vehicle through vehicle operation dataprovided by one or more of vehicle sensors, a telematics device, and amobile device; based on the driving behavior, develop a first drivingprofile for the driver; transmit the first driving profile to a remoteserver storing driving profiles of a plurality of users; download asecond driving profile associated with a different driver from theremote server; configure vehicle operations based off of the seconddriving profile associated with the different driver; and actuatevehicle operation based on the configuration.
 16. The one or morenon-transitory computer-readable media of claim 15 storing furtherinstructions that, when executed by the computing device comprising theat least one processor and memory, cause the computing device to:identify one or more of acceleration behavior, braking behavior, andturning behavior based on acceleration data, braking data, and turningdata provided by one or more of the vehicle sensors, the telematicsdevice, and the mobile device.
 17. The one or more non-transitorycomputer-readable media of claim 15, wherein the second driving profileassociated with the different driver is downloaded from the remoteserver through a driving profile store interface, and wherein thedownloading of the second driving profile causes the different driver toreceive an insurance credit.
 18. The one or more non-transitorycomputer-readable media of claim 15 storing further instructions that,when executed by the computing device comprising the at least oneprocessor and memory, cause the computing device to: receive drivingroute information from the driver of the vehicle; based on the drivingroute information, calculate a risk score for a driving routecorresponding to the driving route information; identify the seconddriving profile based on the risk score matching a driving profilesafety score of the second driving profile; and recommend the seconddriving profile to the driver of the vehicle for download.
 19. The oneor more non-transitory computer-readable media of claim 18 storingfurther instructions that, when executed by the computing devicecomprising the at least one processor and memory, cause the computingdevice to: identify a plurality of driving profiles based on the riskscore matching a range of driving profile safety score corresponding tothe plurality of driving profiles; and recommend the second drivingprofile to the driver of the vehicle for download based on the drivingprofile safety score being closest to the risk score for the drivingroute.
 20. The one or more non-transitory computer-readable media ofclaim 19, wherein each of the plurality of driving profiles areassociated with an insurance premium, and wherein the second drivingprofile is associated with the cheapest insurance premium.